Scheduling beams of a satellite antenna

ABSTRACT

In one implementation, a method for scheduling beams of an antenna on a satellite during a defined time period includes calculating a beam score for each beam based on the expected gain of the beam and determining that the number of beams having non-zero beam scores during the defined time period is less than a threshold value. In addition, the method also includes accessing a set of beam weights for each of multiple different candidate beam patterns, and, for each set of weights, multiplying individual beam weights by corresponding beam scores, and generating a candidate beam pattern score by calculating a sum of the products of the beam weights and corresponding beam scores. The method further includes comparing the candidate beam pattern scores, selecting a particular one of the candidate beam patterns, and scheduling the selected beam pattern for the defined time period.

CROSS-REFERENCE TO RELATED APPLICATION

This application is a continuation of U.S. patent application Ser. No.15/462,396 filed on Mar. 17, 2017, the disclosures of which areincorporated herein by reference.

TECHNICAL FIELD

The disclosure relates generally to provisioning satellite coverage.

SUMMARY

According to one implementation of the disclosure, a method forscheduling beams of an antenna on a satellite during a defined timeperiod includes calculating a beam score for each beam based on theexpected gain of the beam and determining that the number of beamshaving non-zero beam scores during the defined time period is less thana threshold value. In addition, the method also includes accessing a setof beam weights for each of multiple different candidate beam patterns,and, for each set of weights, multiplying individual beam weights bycorresponding beam scores, and generating a candidate beam pattern scoreby calculating a sum of the products of the beam weights andcorresponding beam scores. The method further includes comparing thecandidate beam pattern scores, selecting a particular one of thecandidate beam patterns, and scheduling the selected beam pattern forthe defined time period.

Other features of the present disclosure will be apparent in view of thefollowing detailed description of the disclosure and the accompanyingdrawings. Implementations described herein, including theabove-described implementations, may include a method or process, asystem, or computer-readable program code embodied on computer-readablemedia.

BRIEF DESCRIPTION OF THE DRAWINGS

For a more complete understanding of the present disclosure, referencenow is made to the following description taken in connection with theaccompanying drawings.

FIG. 1 is a high level block diagram of an example of an air trafficmanagement system ecosystem in accordance with a non-limitingimplementation of the present disclosure.

FIG. 2 is a functional block diagram of an example of a ground controlsystem and satellite interaction ecosystem in accordance with anon-limiting implementation of the present disclosure.

FIG. 3 is a flow chart of an example of a process for selecting a beamconfiguration in accordance with a non-limiting implementation of thepresent disclosure.

FIGS. 4, 5A-5B, and 6A-6B are illustrations of examples of beam patternsin accordance with a non-limiting implementation of the presentdisclosure.

FIG. 7 is a flow chart of an example of a process for selecting a beamconfiguration in accordance with a non-limiting implementation of thepresent disclosure.

DETAILED DESCRIPTION

Traditionally, air traffic control, aircraft surveillance, and flightpath management services have relied on ground-based radar stations andsurveillance data processing systems. These systems rely onaircraft-based radio transmitters and terrestrial interrogation andreceiving stations to implement systems, such as, for example, primarysurveillance radar (“PSR”), secondary surveillance radar (“SSR”), and/ormode select (“Mode S”) radar, for communicating aircraft position andmonitoring information to local ground stations. The informationreceived at the local ground stations is then relayed to regional orglobal aircraft monitoring systems. Such conventional radar-basedsystems for use in air traffic control, aircraft surveillance, andflight path management services are limited to use in regions in whichthe appropriate ground infrastructure exists to interrogate and receivemessages from aircraft. Consequently, vast areas of the world's airspace(e.g., over the oceans and poles, remote and/or mountainous regions,etc.) are not monitored by conventional, terrestrial radar-basedsystems.

Recently, modernization efforts have been launched to replaceradar-based air traffic control, aircraft surveillance, and flightmanagement systems with more advanced automatic dependentsurveillance-broadcast (“ADS-B”) based systems. In an ADS-B-basedsystem, an aircraft determines its position using a satellite-basednavigation system (e.g., the Global Positioning System (“GPS”)) andperiodically broadcasts its position and, in some cases, otherinformation (e.g., velocity, time, and/or intent, among otherinformation), thereby enabling the aircraft to be tracked. ADS-B-basedsystems may utilize different data links and formats for broadcastingADS-B messages. 1090 MHz Mode S ES is an example of one such data linkwhich has been adopted in many jurisdictions. For example, in the UnitedStates, the Federal Aviation Administration (“FAA”) has mandated 1090MHz Mode S ES for use by air carrier and private or commercial operatorsof high-performance aircraft. Like traditional radar-based systems,ADS-B-based systems require appropriate infrastructure for receivingADS-B messages broadcast by aircraft. As a result, even as numerousjurisdictions transition to terrestrial, ADS-B-based systems, airtraffic in vast airspaces remains unmonitored.

To address this limitation of terrestrial ADS-B systems, satellite-basedreceivers can be used to receive ADS-B messages broadcast by aircraft,and such ABS-B messages then can be relayed back down to earth terminalsor other terrestrial communications infrastructure for transmission toand use by air traffic control, aircraft surveillance, and flight pathmanagement services.

For example, and with reference to FIG. 1, a high-level block diagram ofone example of a space-based ADS-B system 100 is illustrated inaccordance with the present disclosure. System 100 includes satellite 10in communication with and part of satellite network 20, and aircraft 70.In some implementations, satellite network 20, including satellite 10,may be a low Earth orbit (“LEO”) constellation of cross-linkedcommunications satellites. As illustrated in FIG. 1, terrestrial ADS-Bground station 60, air traffic management system 40 and satellitecommunication network earth terminal 30 are located on Earth 80'ssurface.

Aircraft 70 carries an on-board ADS-B transponder 72 that broadcastsADS-B messages containing flight status and tracking information.Satellite 10 carries payload 12 to receive ABS-B messages broadcast byaircraft 70 and other aircraft. In some implementations, multiple or allof the satellites in satellite network 20 may carry ADS-B payload toreceive ADS-B messages broadcast by aircraft. Messages received atreceiver 12 are relayed through satellite network 20 to satellitecommunication network earth terminal 30 and ultimately to air trafficmanagement system 40 through terrestrial network 50. The air trafficmanagement system 40 may receive aircraft status information fromvarious aircraft and provide additional services such as air trafficcontrol and scheduling or pass appropriate information along to othersystems or entities.

In some implementations, ADS-B payload 12 may have one or more antennasand one or more receivers for receiving ADS-B messages broadcast byaircraft. Additionally or alternatively, in some implementations, ADS-Bpayload 12 may have a phased array antenna formed from multiple antennaelements that collectively are configured to provide multiple differentbeams for receiving ADS-B messages.

In certain implementations, satellite network 20 may have a primarymission other than receiving ADS-B messages broadcast by aircraft. Forexample, in some implementations, satellite network 20 may be a LEO,mobile satellite communications constellation. In such implementations,ADS-B payloads like ADS-B payload 12 may be hosted on satellites 10 ofsatellite network 20 as hosted or secondary payloads that may beconsidered secondary to the primary mission of the satellite network 20.Consequently, such ADS-B payloads when operated as hosted payloads maybe constrained by certain limitations, such as, for example, arelatively low maximum weight and a relatively low power budget so asnot to take away from the primary mission of the satellite network 20.

Terrestrial ADS-B ground station 60 provides aircraft surveillancecoverage for a relatively small portion of airspace, for example,limited to aircraft within line of sight of ground station 60. Even ifterrestrial ADS-B ground stations like ground station 60 are widelydispersed across land regions, large swaths of airspace (e.g., over theoceans) will remain uncovered. Meanwhile, a spaced-based ADS-B system100 utilizing a satellite network like satellite network 20 may providecoverage of airspace over both land and sea regions without beinglimited to areas where ground-based surveillance infrastructure has beeninstalled. Thus, a space-based ADS-B system may be preferable (or avaluable supplement) to terrestrial approaches.

However, implementing a spaced-based ADS-B system, such as, for example,system 100 may present a number of challenges. For example, in certainimplementations, individual satellites 10 (or ADS-B payloads 12) mayhave limited power budgets within which to operate. As such, theindividual satellites 10 (or ADS-B payloads 12) may benefit fromintelligent management of resources to achieve desired performancelevels without exceeding allowed power budgets.

In one example, individual satellites 10 (or ADS-B payloads 12) may beconfigured to provide multiple different coverage beams for receivingADS-B messages and may benefit from intelligent management of beamscheduling to achieve desired coverage without exceeding allowed powerbudgets. Referring now to FIG. 4, in one specific implementation, eachindividual satellite 10 (or ADS-B payload 12) may be configured to have33 different beams, for example, laid out as illustrated in the examplebeam pattern illustrated in FIG. 4. However, power (or other resourceconstraints) may prevent the concurrent use of all 33 beams at the sametime. For example, operating all 33 beams at the same time may cause anindividual satellite 10 (or ADS-B payload 12) to exceed its allowedpower budget. Additionally or alternatively, size and/or processingconstraints may not allow for 33 individual receivers on board satellite10 (or ADS-B payload 12) for concurrently processing signals received inall 33 beams. Therefore, individual satellites 10 (or ADS-B payloads)may benefit from intelligent beam scheduling to achieve desired coveragewithin the constraints imposed on or by the satellite 10 (or ADS-Bpayload 12).

The present disclosure describes beam selection and schedulingtechniques. While the disclosed beam selection and scheduling techniquesgenerally are described in the context of selecting and scheduling beamsof a satellite's (or payload's) antenna for receiving ADS-B messages,the beam selection and scheduling techniques may have broad applicationand can be employed in a variety of different contexts for the purposeof selecting and scheduling satellite antenna beams. As described ingreater detail below, such beam selection and scheduling may beperformed on a terrestrial computing platform (or similar resource) withthe resultant beam schedules thereafter being uploaded to individualsatellites. Additionally or alternatively, individual satellites mayperform the beam selection and scheduling techniques disclosed hereinthemselves.

FIG. 2 is a functional block diagram of an example of a ground controlsystem and satellite interaction ecosystem 105 in accordance with anon-limiting implementation of the present disclosure. As illustrated inFIG. 2, the ecosystem may include a server or other computing platform110, a memory 115, a ground control system 120, a processor 125, aninterface 155, an input and output (“I/O”) device 130, and a hard disk140. Ground control system 120 processes may be performed on thecomputing platform 110 shown in FIG. 2. Processor 125 may be operable toload instructions from hard disk 140 into memory 115 and execute thoseinstructions. Memory 115 may store computer-readable instructions thatmay instruct the computing platform 110 to perform certain processes.I/O device 130 may receive one or more of data from another server,local database, or a network 145. The computing platform 110 may beconsidered a processing system.

Satellites 155 a-155 z may include ADS-B payloads or otherwise beconfigured to receive ADS-B messages broadcast by aircraft. As such,satellites 155 a-155 z may include antennas that provide multiple beamsfor receiving ADS-B messages.

Network 145 may facilitate wireless communications of information andprovisioning of satellites 155 a-155 z. For example, the ground controlsystem 120 may communicate with satellites 155 a-155 z via the network145. As such, network 145 may include wireless (e.g., radio frequency(RF″) uplinks and downlinks for communicating with satellites 155 a-155z. Communications sent by the ground control system 120 to satellites155 a-155 z via network 145 may include beam selection schedules asdescribed in greater detail below. Similarly, satellites 155 a-155 z mayrelay received ADS-B messages through network 145 for terrestrialprocessing.

The ground control system 120 may also include or have access to adatabase 150 which may include, for example, additional servers, datastorage, and resources. Ground control system 120 may receive additionaldata from database 150, such as, for example, expected antenna beam gainpatterns, information about desired or required coverage areas,available beam patterns, and power budgets available to individualsatellites 155.

The ground control system 120 may be configured to perform beamselection and scheduling processes for satellites 155 a-155 z. In someimplementations, to assess coverage of the earth, the ground controlsystem 120 may divide the earth into a grid of 1°×1° tiles over WGS-84latitude and longitude. Such tiles may be divided into four categories:class one tiles in low update interval service volumes (e.g., updateintervals of approximately 10-15 seconds); class two tiles in servicevolumes that may benefit from special treatment (e.g., tiles near hightraffic areas where so-called FRUIT (false replies unsynchronized intime) levels may be expected to be high or tiles where satellitecoverage overlap may be low, such as, for instance, near the equator inthe case of a constellation of satellites in substantially polarorbits); class three tiles in high update interval service volumes(e.g., update intervals of approximately 30 seconds); and class fourtiles where coverage is not desired or provided. In someimplementations, an individual class two tile also may be considered tobe either a class one tile or a class three tile (e.g., based on thedesired update interval for the service volume where the tile islocated). These tile classifications may inform, beam selection andscheduling decisions may be ground control system 120.

In some implementations, a space-based ADS-B system is formed from aconstellation of satellites in low-Earth orbit (LEO). For example, aspace-based ADS-B system may be formed from a number of LEO satellitesarranged in some number of substantially polar orbital planes such thatthe constellation collectively provides coverage of substantially all ofthe Earth's surface. In one particular implementation, a space-basedADS-B system may be formed from 66 LEO satellites arranged in 6 orbitalplanes each having 11 satellites in substantially polar orbits. Theantennas for receiving ADS-B messages on each of the satellites of sucha space-based ADS-B system may be substantially the same and may beconfigured to provide substantially the same beam patterns. In oneparticular example, the antennas may be configured to provide 33 beamsfor receiving ADS-B signals. FIG. 4 illustrates one example of a beampattern for such an antenna configured to provide 33 beams. In someimplementations, the primary mission of the satellites may be to providethe space-based ADS-B system. In other implementations, the satellitesmay have one or more other missions and the space-based ADS-B system maybe implemented by ADS-B payloads hosted on the satellites as hosted orsecondary payloads. Therefore, it should be understood that referencesherein to a satellite or an antenna on board a satellite may refer to asatellite or a satellite's primary payload as well as a hosted orsecondary payload and an antenna for a hosted or secondary payload.

Due to power (and/or other) constraints, it may be desirable (ornecessary) to use less than a satellite's full complement of beams forreceiving ADS-B messages. Therefore, beam selection and schedulingtechniques may be performed in an effort to satisfy such constraintswhile still providing the desired coverage. In some implementations, thebeam selection and scheduling techniques may schedule specific beamconfigurations for defined periods of time, each of which may besubdivided into segments. For example, in one implementation, the beamselection and scheduling techniques may schedule specific beamconfigurations for defined periods of time that may be referred toherein as beam cycle periods that are further subdivided into foursegments (e.g., Segment A, Segment B, Segment C, and Segment D). In someimplementations, the time period for a beam cycle period may beconfigurable. Examples of different time periods for a beam cycle periodin different implementations or according to different configurationsinclude 5 seconds, 8 second, and 10 seconds. For each such beam cycleperiod, the satellite may be assigned a particular power budget, forexample, based on whether the satellite is in a position from whichsolar power is available or in an eclipse position from which solarpower is not available because the Earth blocks the sun. The schedulingof the four segments and the different beams that may be turned on andoff during individual segments then may be determined in an effort toachieve the desired coverage while satisfying the power budget (and/orother constraints).

A variety of different techniques may be employed to accomplish suchbeam selection and scheduling during each such beam cycle period for asatellite's antenna. For example, one technique may be referred to as adefault sector scan. When a default sector scan is employed, each of thefour segments may be assigned to a different quadrant of the antenna'sbeam pattern (e.g., as depicted in FIG. 4), and all (or some portion ofall) of the antenna's beams in an individual quadrant may be turned onduring the corresponding segment and off during the other segments. Forexample, during Segment A, all (or some portion of all) of the antenna'sbeams in Quadrant 1 may be turned on while all of the antenna's otherbeams are turned off. Similarly, during Segment B, all (or some portionof all) of the antenna's beams in Quadrant 2 may be turned on while allof the antenna's other beams are turned off. Likewise, during Segment C,all (or some portion of all) of the antenna's beams in Quadrant 3 may beturned on while all of the antenna's other beams are turned off; and,during Segment D, all (or some portion of all) of the antenna's beams inQuadrant 4 may be turned on while all of the antenna's other beams areturned off. In some implementations, the default sector scan techniquemay be configured to spend an equal dwell time (e.g., 1 second) in eachof the four quadrants. Alternatively, in other implementations, thedefault sector scan may be configured to spend different dwell times ineach of the four quadrants (e.g., based on the classifications of tileswithin each quadrant). While the default sector scan technique mayprovide relatively good coverage, a default sector scan also may requirea relatively large power budget to operate and, therefore, may notalways be a suitable option.

Another technique that may be used to accomplish beam selection andscheduling during a beam cycle period is to turn off all of theantenna's beams during one or more segments and to select one or moredifferent beam patterns during the remaining segments. In one particularexample, this technique may involve selecting particular beam patternsto be employed during Segment A and Segment C while turning all of theantenna's beams off during Segment B and Segment D. In this example, thebeam patterns selected for Segments A and C may be referred to herein aspaired beam patterns. In such an approach, the length of each individualsegment may be determined in an effort to comply with the defined powerbudget for the beam cycle period. For example, if the defined powerbudget is relatively low, the lengths of Segment B and Segment D, whereall of the antenna's beams are turned off, may be scheduled to berelatively long; whereas, if the defined power budget is relativelyhigh, the lengths of Segment B and Segment D may be scheduled to berelatively short. For example, in one implementation, the length of timefor each of Segments A and C and the length of time for each of SegmentsB and D may be calculated according to the following equation:

$\left( {{{Beam}\mspace{14mu} {Cycle}\mspace{14mu} {Period}} - {{Time}\mspace{14mu} {On}}} \right) = {{Time}\mspace{14mu} {{On}\left( \frac{{Power}_{On} - {Power}_{Budget}}{{Power}_{Budget} - {Power}_{Off}} \right)}}$

where “Beam Cycle Period” represents the time period for the beam cycleperiod, “Time On” represents two times the length of time for each ofSegments A and C, “Beam Cycle Period” minus “Time On” represents twotimes the length of time for each of Segments B and D, “Power_(On)”represents a measure of the power consumed with the beams turned onduring Segments A and C, “Power_(Off)” represents a measure of the powerconsumed with the beams turned off during Segments B and D, and“Power_(Budget)” is the defined power budget for the beam cycle period.

Additionally or alternatively, in some implementations, the titles to becovered by the satellite during the beam cycle period may be taken intoaccount when determining the length of time for each individual segment.For example, if one or more of the tiles to be covered by the satelliteduring the beam cycle period are class one tiles for which relativelyshort update intervals are desired, the lengths of Segment A and SegmentC may be scheduled to be relatively long.

A variety of different beam patterns may be available for selection forSegment A and Segment C. For example, in some cases, a first so-called“Omni” beam pattern that covers nearly all of the azimuth and elevationspace within the satellite's coverage footprint may be selected forSegment A and a second “Omni” beam pattern that overlaps with the first“Omni” beam pattern but provides slightly different coverage of theazimuth and elevation space within the satellite's coverage footprintmay be selected for Segment C. Referring to the specific example beamconfiguration illustrated in FIG. 4, the first “Omni” beam pattern forSegment A may employ beams 1, 4, 7, 10, 12, 15, 18, 21, 23, 27, 31, and33, while the second “Omni” beam pattern for Segment C may employ beams2, 5, 8, 11, 13, 16, 19, 22, 23, 27, 31, and 33. Plots showing examplesof the probability of detection (PD) of ADS-B messages when these two“Omni” beam patterns are used are illustrated in FIG. 5A and FIG. 5B,respectively.

Additionally or alternatively, in some cases, a first so-called “Hemi”beam pattern that approximately covers one half of the azimuth andelevation space within the satellite's coverage footprint may beselected for Segment A and a second “Hemi” beam pattern thatapproximately covers the other half of the azimuth and elevation spacewithin the satellite's coverage footprint may be selected for Segment C.Referring to the specific example beam configuration illustrated in FIG.4, the first “Hemi” beam pattern for Segment A may employ beams 2, 3, 4,5, 6, 8, 10, 12, 23, 24, 26, and 33, while the second “hemi” beampattern for Segment C may employ beams 1, 13, 14, 15, 17, 19, 20, 21,27, 28, 30, and 33. Plots showing examples of the probability ofdetection (PD) of ADS-B messages when these two “hemi” beam patterns areused are illustrated in FIG. 6A and FIG. 6B, respectively.

In some implementations, many additional paired beam patterns may beavailable for selection for Segment A and Segment C. For example, oneexample of an additional paired beam pattern may be a so-called “EastHemi” paired beam pattern that focuses coverage within quadrants 1 and 2of the azimuth and elevation space of the satellite's coveragefootprint. Referring to the specific example beam configurationillustrated in FIG. 4, the “East Hemi” beam pattern for Segment A mayemploy beams 1, 3, 4, 6, 8, 10, 12, 23, 24, 25, 26, and 32, while the“East Hemi” beam pattern for Segment C may employ beams 2, 4, 5, 7, 9,11, 23, 24, 25, 26, 27, and 31. Alternatively, another example of anadditional paired beam pattern may be a so-called “West Hemi” pairedbeam pattern that focuses coverage within quadrants 3 and 4 of theazimuth and elevation space of the satellite's coverage footprint.Referring to the specific example beam configuration illustrated in FIG.4, the “West Hemi” beam pattern for Segment A may employ beams 1, 21,19, 17, 15, 13, 31, 30, 29, 28, 27, and 32, while the “West Hemi” beampattern for Segment C may employ beams 22, 20, 18, 16, 14, 12, 23, 27,28, 29, 30, and 31. Numerous other paired beam patterns also may beavailable. For example, paired beam patterns focusing on individualquadrants also may be available. Additionally or alternatively, pairedbeam patterns focusing on three quadrants also may be available.

In some implementations, each paired beam pattern may be associated witha set of weights, with each weight corresponding to an individual one ofthe beams of the satellite's antenna. For example, referring to thespecific example beam configuration of 33 beams illustrated in FIG. 4and recalling the “East Hemi” paired beam pattern described above, thefollowing table illustrates examples of weights assigned to each beam ofthe satellite's antenna for the purposes of the “East Hemi” paired beampattern:

1 2 3 4 5 6 7 8 9 10 11 0.4 1 1 1 1 1 1 1 1 1 1 12 13 14 15 16 17 18 1920 21 22 0.4 0 0 −1 −1 −1 −1 −1 −1 0 0 23 24 25 26 27 28 29 30 31 32 330.4 1 1 1 0.4 0 −1 0 0.4 04 0.4These sets of weights for each of the available paired beam patterns maybe used in the process of selecting an appropriate paired beam patternfor a satellite for a particular beam cycle period. For example, theexpected gain (in some cases quantified as the link margin, or theenergy per bit to noise power spectral density ratio, E_(b)/N₀) of eachbeam during the particular beam cycle period may be multiplied by thebeam's corresponding weight for each paired beam pattern, and theresulting products for each of the beams of a given paired beam patternmay be summed to generate a score for the paired beam pattern. Thepaired beam pattern with the highest score for the particular beam cycleperiod then may be selected as the appropriate paired beam pattern forthe particular beam cycle period.

In some implementations, the expected gain for a beam may be a functionof one or more different factors. For example, the expected gain for abeam may be a function of the orientation (e.g., angle) of thesatellite's antenna (or relevant antenna elements) relative to thecoverage area covered by the beam. Additionally or alternatively, theexcepted gain for a beam also may take into account the desired coveragearea. For example, if the coverage area covered by a beam during aparticular period of time covers only tiles for which coverage is notdesired, the expected gain for the beam may be set to zero irrespectiveof the actual expected gain of the beam during that particular period.

In some implementations, the expected gain for a beam may change overtime, for example, as the satellite orbits the Earth and the orientationof the satellite's antenna relative to the Earth changes. Consequently,in some implementations, changes to the expected gain for a beam overtime may be taken into account in the beam selection processes describedherein. For example, in some implementations, a beam score may becalculated for each beam of a satellite's antenna for a particular beamcycle period by dividing the particular beam cycle period into somesmaller number of sub-periods (e.g., 10 sub-periods) and calculating thesum (or the average) of the expected gain for the beam across all of thesub-periods. Such beam scores can be used in a number of different waysin the beam selection processes described herein. For example, the beamscores for each of the beams of a satellite's antenna can be multipliedby the corresponding beam weights associated with the paired antennapatterns as part of the process for selecting an appropriate pairedantenna pattern as described above.

Referring now to FIG. 7, a flow chart of an example of a process 700 forselecting a beam configuration for the beams of a satellite's antennaduring a defined time period (e.g., a beam cycle period) is illustratedin accordance with a non-limiting implementation of the presentdisclosure. Process 700 may be performed by a ground control systemimplemented on a computing platform, such as, for example, groundcontrol system 120 implemented on computing platform 110 as illustratedin FIG. 2. In such cases, beam selection schedules generated byperforming process 700 may be uploaded to individual satellites 155 and,thereafter, used by the individual satellites 155 to control the beamsof the satellites' antennas. Additionally or alternatively, process 700may be performed by computing resources on board one or more satellites.

In some implementations, process 700 may be performed multiple times andin advance to develop a beam selection schedule for an individualsatellite for many defined time periods (e.g., beam cycle periods). Forexample, in some implementations, process 700 may be performed togenerate a forward-looking beam selection schedule for an individualsatellite as much as twenty-four hours or more in advance. In suchimplementations, small portions of such beam selection schedules may beuploaded to the satellites at time. For example, in someimplementations, beam selection schedules defining beam selections for120 second time periods may be uploaded to the satellites. It will beappreciated that process 700 may be performed for each of severaldifferent satellites to generate beam selection schedules for eachindividual satellite.

Referring specifically to FIG. 7, at step 800, a determination is madeas to whether the number of active beams of the satellite's antennaduring a defined time period (e.g., a beam cycle period) exceeds thenumber of receivers available on the satellite for processing signalsreceived by the antenna by less a defined first threshold value. In someimplementations, an active beam may be considered to be a beam that hasa non-zero expected gain during the defined time period or a non-zerobeam score during the defined time period. In one example, a satellitemay have 12 receivers available for processing signals received by theantenna, and the first threshold value may be 3. In this example, if thesatellite's antenna has 14 or fewer active beams, it may be determinedat step 800 that the number of active beams exceeds the number ofavailable receivers by less than the first threshold value.Alternatively, if the satellite's antenna has 15 or more active beams,it may be determined at step 800 that the number of active beams doesnot exceed the number of available receivers by less than the firstthreshold value.

If it is determined that the number of active beams of the satellite'santenna exceeds the number of available receivers by less than the firstthreshold value, the process 700 proceeds to step 802. At step 802, abeam selection process is performed that focuses on selecting the bestavailable active beams for the satellite during the defined time period.For example, the defined time period may be subdivided into Segments A,B, C, and D, and beam scores for each beam of the satellite's antennaduring the defined time period may be used to rank each of the beamsduring the defined time period. Some number (e.g., corresponding to thenumber of receivers available on the satellite) of the top-ranked beamsthen may be selected to be turned on during each of Segment A andSegment C while all of the beams may be turned off during Segment B andSegment D. For example, continuing with the example of the satellitehaving 12 receivers introduced above, if the satellite's antenna has 13active beams during the defined time period, the 12 top-ranked beams maybe selected to be turned on during Segment A and the 11 top-ranked beamsand the 13th-ranked beam may be selected to be turned on during SegmentC.

Returning again to step 800, if it is determined that the number ofactive beams of the satellite's antenna does not exceed the number ofavailable receivers by less than the threshold value, the processproceeds to step 804. At step 804, a determination is made as to whetherany of the tiles that will be within the coverage footprint of thesatellite's antenna during the defined time period (or that will bewithin the coverage footprint of the active beams of the satellite'santenna during the defined time period) may benefit from specialtreatment, for example, because the tiles are near high traffic areaswhere FRUIT levels may be expected to be high (perhaps particularlyduring specific windows of time when traffic is known to usually behigh) or because the tiles are located in areas where satellite coverageoverlap may be low.

If it is determined that one or more of the tiles that will be withinthe coverage of the footprint of the satellite during the defined timeperiod may benefit from special treatment, the process 700 proceeds tostep 806 where a determination is made as to whether a sufficient powerbudget is available during the defined time period to support suchspecial treatment. In some implementations, the determination of whetherthere is a sufficient power budget available during the defined timeperiod may be based on whether there is a sufficient power budgetavailable to support a default sector scan as described above. In suchimplementations, if it is determined that a sufficient power budget isavailable during the defined time period, at step 808, a default sectorscan may be scheduled for the beams of the satellite's antenna duringthe defined time period.

If it is determined that no tiles that will be within the coveragefootprint of the satellite's antenna during the defined time period willbenefit from special treatment or that a sufficient power budget is notavailable to support such special treatment, the process 700 proceeds tostep 810 where a determination is made as to whether the number ofactive beams of the satellite's antenna will exceed a second thresholdvalue during the defined time period. If it is determined that thenumber of active beams of the satellite's antenna will exceed the secondthreshold value during the defined time period, the process 700 proceedsto step 812 where a default paired beam pattern (e.g., one of the “Omni”paired beam pattern or the “Hemi” paired beam pattern described above)is scheduled for the beams of the satellite's antenna during the definedtime period.

Alternatively, if it is determined that the number of active beams ofthe satellite's antenna will not exceed the second threshold valueduring the defined time period, the process 700 proceeds to step 814where a pattern association process is initiated. In particular, thedefined time period may be subdivided into Segments A, B, C, and D, and,at step 816, the beam scores for each of the antenna's beams during thedefined time period are multiplied by the corresponding beam weights foreach of several defined paired beam patterns. Thereafter, at step 818,the paired beam pattern for which the sum of the products of the beamscores and beam weights is highest may be selected as the paired beampattern for the antenna's beams during the defined period of time. Atstep 820, the actual beam patterns for Segment A and Segment Ccorresponding to the selected paired beam pattern are retrieved, and, atstep 822, a determination is made as to whether all of the tiles forwhich coverage is desired (e.g., all tiles classified as class 1, class2, and/or class 3) within the coverage footprint of the satellite'santenna (or within the coverage footprint of the active beams of thesatellite's antenna) will be covered by the retrieved beam patterns. Ifit is determined that all of the tiles for which coverage is desiredwill be covered by the retrieved beam patterns, the process proceeds tostep 824 where the retrieved beam patterns are scheduled for the beamsof the satellite's antenna during the defined time period.Alternatively, if it is determined that not all of the tiles for whichcoverage is desired will be covered by the retrieved beam patterns, theprocess proceeds to step 812 where a default paired beam pattern (e.g.,one of the “Omni” paired beam pattern or the “Hemi” paired beam patterndescribed above) is scheduled for the beams of the satellite's antennaduring the defined time period.

FIG. 3 is a flow chart of an example of a process 300 for selecting abeam configuration for the beams of a satellite's antenna during adefined time period in accordance with a non-limiting implementation ofthe present disclosure. Process 300 may be performed by a ground controlsystem implemented on a computing platform, such as, for example, groundcontrol system 120 implemented on computing platform 110 as illustratedin FIG. 2. In such cases, beam selection schedules may be uploaded toindividual satellites 155 and, thereafter, used by the individualsatellites 155 to control the beams of the satellites' antennas.Additionally or alternatively, process 300 may be performed by computingresources on board one or more satellites. In some implementations,process 300 may be performed multiple times and in advance to develop abeam selection schedule for an individual satellite for multiple definedtime periods. It also will be appreciated that process 300 may beperformed for each of several different satellites to generate beamselection schedules for each individual satellite.

At step 300, a beam score is calculated for each beam of the antennabased, at least in part, on the expected gain of the beam during thedefined time period. In some implementations, the beam score for a beammay be calculated by subdividing the time period into multiplesub-periods and calculating the sum or average of the expected gain ofthe beam across the sub-periods. Additionally or alternatively, in someimplementations, beam scores may take into account desired coverageareas. For example, in some implementations, if the area covered by anindividual beam during the defined time period is not an area for whichcoverage is desired, the beam score for the beam for the defined timeperiod may be set to zero (or some other value to reflect that coverageis not desired for the area covered by the beam during the defined timerperiod).

At step 320, the number of beams of the antenna having non-zero beamscores during the defined time period is determined. Thereafter, at step330, the number of beams of the antenna having non-zero beam scoresduring the defined time period is compared to a threshold value, and, atstep 340, it is determined that the number of beams of the antennahaving non-zero beam scores during the defined time period is less thanthe threshold value.

At step 350, as a consequence of having determined that the number ofbeams of the antenna having non-zero beam scores during the defined timeperiod is less than the threshold value, a set of beam weights for eachof multiple different candidate beam patterns, each of which has aweight corresponding to each of the antenna's beams, is accessed.Thereafter, at step 360, for each set of weights, the individual beamweights are multiplied by the corresponding beam scores for each of thebeams of the antenna during the defined time period, and a candidatebeam pattern score is generated by calculating a sum of the products ofthe beam weights and corresponding beam scores.

The candidate beam pattern scores for the different candidate beampatterns then are compared at step 370, and, at step 380, a particularone of the candidate beam patterns is selected based on the candidatebeam pattern scores. For example, in some implementations, the candidatebeam pattern having the highest candidate beam pattern score may beselected. Finally, at step 390, the selected beam pattern is scheduledfor the beams of the antenna for the defined time period.

Aspects of the present disclosure may be implemented entirely inhardware, entirely in software (including firmware, resident software,micro-code, etc.) or in combinations of software and hardware that mayall generally be referred to herein as a “circuit,” “module,”“component,” or “system.” Furthermore, aspects of the present disclosuremay take the form of a computer program product embodied in one or moremachine-readable media having machine-readable program code embodiedthereon.

Any combination of one or more machine-readable media may be utilized.The machine-readable media may be a machine-readable signal medium or amachine-readable storage medium. A machine-readable storage medium maybe, for example, but not limited to, an electronic, magnetic, optical,electromagnetic, or semiconductor system, apparatus, or device, or anysuitable combination of the foregoing. More specific examples (anon-exhaustive list) of such a machine-readable storage medium includethe following: a hard disk, a random access memory (RAM), a read-onlymemory (ROM), an erasable programmable read-only memory (EPROM or Flashmemory), an appropriate optical fiber with a repeater, an opticalstorage device, a magnetic storage device, or any suitable combinationof the foregoing. In the context of this document, a machine-readablestorage medium may be any tangible medium that can contain or store aprogram for use by or in connection with an instruction executionsystem, apparatus, or device, such as, for example, a microprocessor.

A machine-readable signal medium may include a propagated data signalwith machine-readable program code embodied therein, for example, inbaseband or as part of a carrier wave. Such a propagated signal may takeany of a variety of forms, including, but not limited to,electro-magnetic, optical, or any suitable combination thereof. Amachine-readable signal medium may be any machine-readable medium thatis not a machine-readable storage medium and that can communicate,propagate, or transport a program for use by or in connection with aninstruction execution system, apparatus, or device. Program codeembodied on a machine-readable signal medium may be transmitted usingany appropriate medium, including but not limited to wireless, wireline,optical fiber cable, RF signals, etc., or any suitable combination ofthe foregoing.

Computer program code for carrying out operations for aspects of thepresent disclosure may be written in any combination of one or moreprogramming languages, including object oriented programming languages,dynamic programming languages, and/or procedural programming languages.

The flowchart and block diagrams in the figures illustrate examples ofthe architecture, functionality, and operation of possibleimplementations of systems, methods and computer program productsaccording to various aspects of the present disclosure. In this regard,each block in the flowchart or block diagrams may represent a module,segment, or portion of code, which comprises one or more executableinstructions for implementing the specified logical function(s). Itshould also be noted that, in some alternative implementations, thefunctions noted in the blocks may occur out of the order illustrated inthe figures. For example, two blocks shown in succession may, in fact,be executed substantially concurrently, or the blocks may sometimes beexecuted in the reverse order, depending upon the functionalityinvolved. It will also be noted that each block of the block diagramsand/or flowchart illustration, and combinations of blocks in the blockdiagrams and/or flowchart illustration, can be implemented by specialpurpose hardware-based systems that perform the specified functions oracts, or combinations of special purpose hardware and machine-readableinstructions.

The terminology used herein is for the purpose of describing particularaspects only and is not intended to be limiting of the disclosure. Asused herein, the singular forms “a”, “an” and “the” are intended toinclude the plural forms as well, unless the context clearly indicatesotherwise. It will be further understood that the terms “comprises”and/or “comprising,” when used in this specification, specify thepresence of stated features, integers, steps, operations, elements,and/or components, but do not preclude the presence or addition of oneor more other features, integers, steps, operations, elements,components, and/or groups thereof.

The corresponding structures, materials, acts, and equivalents of anymeans or step plus function elements in the claims below are intended toinclude any disclosed structure, material, or act for performing thefunction in combination with other claimed elements as specificallyclaimed. The description of the present disclosure has been presentedfor purposes of illustration and description, but is not intended to beexhaustive or limited to the disclosure in the form disclosed. Manymodifications and variations will be apparent to those of ordinary skillin the art without departing from the scope and spirit of thedisclosure. The aspects of the disclosure herein were chosen anddescribed in order to explain the principles of the disclosure and thepractical application, and to enable others of ordinary skill in the artto understand the disclosure with various modifications as are suited tothe particular use contemplated.

1-20. (canceled)
 21. A computer-implemented method for scheduling beamsof an antenna on board a satellite in low-Earth orbit for receivingAutomatic Dependent Surveillance Broadcast (ADS-B) messages, wherein theantenna is configured to provide multiple different beams, the methodcomprising: identifying, for beams that the antenna is configured toprovide, corresponding coverage areas during a defined period of time;identifying characteristics of the identified coverage areas; andscheduling individual beams that the antenna is configured to provide tobe on or off during the defined period of time based on the identifiedcharacteristics of their corresponding coverage areas.
 22. Thecomputer-implemented method of claim 21, wherein: identifyingcharacteristics of the identified coverage areas includes identifying atleast one particular coverage area as an area for which coverage isdesired; and scheduling individual beams that the antenna is configuredto provide to be on or off during the defined period of time includesscheduling the beam identified as corresponding to the particularcoverage area to be on during the defined period of time as aconsequence of having identified the particular coverage area as an areafor which coverage is desired.
 23. The computer-implemented method ofclaim 22, wherein scheduling the beam identified as corresponding to theparticular coverage area to be on during the defined period of timeincludes scheduling the beam identified as corresponding to the coveragearea to be on for a portion of the defined period of time that is lessthan all of the defined period of time.
 24. The computer-implementedmethod of claim 21, wherein: identifying characteristics of theidentified coverage areas includes identifying at least one particularcoverage area as an area for which coverage is not desired; andscheduling individual beams that the antenna is configured to provide tobe on or off during the defined period of time includes scheduling thebeam identified as corresponding to the particular coverage area to beoff during the defined period of time as a consequence of havingidentified the particular coverage area as an area for which coverage isnot desired.
 25. The computer-implemented method of claim 21, wherein:identifying characteristics of the identified coverage areas includesidentifying desired update intervals for aircraft within the identifiedcoverage areas; and scheduling individual beams that the antenna isconfigured to provide to be on or off during the defined period of timebased on the identified characteristics of their corresponding coverageareas includes scheduling individual beams that the antenna isconfigured to provide to be one or off during the defined period of timebased on the desired update intervals for aircraft within the identifiedcoverage areas.
 26. The computer-implemented method of claim 21,wherein: identifying characteristics of the identified coverage areasincludes identifying expected aircraft density within the identifiedcoverage areas; and scheduling individual beams that the antenna isconfigured to provide to be on or off during the defined period of timebased on the identified characteristics of their corresponding coverageareas includes scheduling individual beams that the antenna isconfigured to provide to be on or off during the defined period of timebased on the expected aircraft density within the identified coverageareas.
 27. The computer-implemented method of claim 21, wherein:identifying characteristics of the identified coverage areas includesidentifying expected interference with ADS-B messages within theidentified coverage areas; and scheduling individual beams that theantenna is configured to provide to be on or off during the definedperiod of time based on the identified characteristics of theircorresponding coverage areas includes scheduling individual beams thatthe antenna is configured to provide to be on or off during the definedperiod of time based on the expected interference with ADS-B messageswithin the identified coverage areas.
 28. The computer-implementedmethod of claim 21, further comprising determining a power budget duringthe defined period of time, wherein: scheduling individual beams thatthe antenna is configured to provide to be on or off during the definedperiod of time based on the identified characteristics of theircorresponding coverage areas further comprises scheduling individualbeams that the antenna is configured to provide to be on or off duringthe defined period of time based on the identified characteristics oftheir corresponding coverage areas and the determined power budget. 29.The computer-implemented method of claim 28, wherein identifying a powerbudget during the defined period of time includes: determining that thesatellite is in eclipse during the defined period of time; anddetermining a power budget during the defined period of time based onthe satellite being in eclipse during the defined period of time. 30.The computer-implemented method of claim 28, wherein identifying a powerbudget during the defined period of time includes: determining thatsolar power is available to the satellite during the defined period oftime; and determining a power budget during the defined period of timebased on solar power being available to the satellite during the definedperiod of time.
 31. The computer-implemented method of claim 21, furthercomprising determining, for the beams that the antenna is configured toprovide, expected gains during the defined period of time, wherein:scheduling individual beams that the antenna is configured to provide tobe on or off during the defined period of time based on the identifiedcharacteristics of their corresponding coverage areas includesscheduling individual beams that the antenna is configured to provide tobe on or off during the defined period of time based on the identifiedcharacteristics of their corresponding coverage areas and theircorresponding expected gains.
 32. The computer-implemented method ofclaim 21 wherein the antenna corresponds to a secondary payload on thesatellite.
 33. The computer-implemented method of claim 21, whereinscheduling individual beams that the antenna is configured to provide tobe on or off during the defined period of time based on the identifiedcharacteristics of their corresponding coverage areas includesscheduling at least one beam to be on for at least one portion of thedefined period of time and off for at least another portion of thedefined period of time.
 34. A system for scheduling beams of an antennaon board a satellite in low-Earth orbit for receiving AutomaticDependent Surveillance Broadcast (ADS-B) messages, wherein the antennais configured to provide multiple different beams, the systemcomprising: one or more processing elements; and non-transitorycomputer-readable memory storing instructions that, when executed by theone or more processing elements, cause the system to: identify, forbeams that the antenna is configured to provide, corresponding coverageareas during a defined period of time; identify characteristics of theidentified coverage areas; and schedule individual beams that theantenna is configured to provide to be on or off during the definedperiod of time based on the identified characteristics of theircorresponding coverage areas.
 35. The system of claim 34, wherein: theinstructions that, when executed by the one or more processing elements,cause the system to identify characteristics of the identified coverageareas include instructions that, when executed by the one or moreprocessing elements, cause the system to identify at least oneparticular coverage area as an area for which coverage is desired; andthe instructions that, when executed by the one or more processingelements, cause the system to schedule individual beams that the antennais configured to provide to be on or off during the defined period oftime include instructions that, when executed by the one or moreprocessing elements, cause the system to schedule the beam identified ascorresponding to the particular coverage area to be on during thedefined period of time as a consequence of having identified theparticular coverage area as an area for which coverage is desired. 36.The system of claim 34, wherein: the instructions that, when executed bythe one or more processing elements, cause the system to identifycharacteristics of the identified coverage areas include instructionsthat, when executed by the one or more processing elements, cause thesystem to identify at least one particular coverage area as an area forwhich coverage is not desired; and the instructions that, when executedby the one or more processing elements, cause the system to scheduleindividual beams that the antenna is configured to provide to be on oroff during the defined period of time include instructions that, whenexecuted by the one or more processing elements, cause the system toschedule the beam identified as corresponding to the particular coveragearea to be off during the defined period of time as a consequence ofhaving identified the particular coverage area as an area for whichcoverage is not desired.
 37. A non-transitory computer-readable storagemedium having computer-readable program code embodied thereon forscheduling beams of an antenna on board a satellite in low-Earth orbitfor receiving Automatic Dependent Surveillance Broadcast (ADS-B)messages, wherein the antenna is configured to provide multipledifferent beams, the computer-readable program code comprisinginstructions that, when executed by one or more processing elements,cause the processing elements to: identify, for beams that the antennais configured to provide, corresponding coverage areas during a definedperiod of time; identify characteristics of the identified coverageareas; and schedule individual beams that the antenna is configured toprovide to be on or off during the defined period of time based on theidentified characteristics of their corresponding coverage areas. 38.The non-transitory computer-readable storage medium of claim 37,wherein: the instructions that, when executed by the one or moreprocessing elements, cause the processing elements to identifycharacteristics of the identified coverage areas include instructionsthat, when executed by the one or more processing elements, cause theprocessing elements to identify at least one particular coverage area asan area for which coverage is desired; and the instructions that, whenexecuted by the one or more processing elements, cause the processingelements to schedule individual beams that the antenna is configured toprovide to be on or off during the defined period of time includeinstructions that, when executed by the one or more processing elements,cause the processing elements to schedule the beam identified ascorresponding to the particular coverage area to be on during thedefined period of time as a consequence of having identified theparticular coverage area as an area for which coverage is desired. 39.The non-transitory computer-readable storage medium of claim 37,wherein: the instructions that, when executed by the one or moreprocessing elements, cause the one or more processing elements toidentify characteristics of the identified coverage areas includeinstructions that, when executed by the one or more processing elements,cause the one or more processing elements to identify at least oneparticular coverage area as an area for which coverage is not desired;and the instructions that, when executed by the one or more processingelements, cause the processing elements to schedule individual beamsthat the antenna is configured to provide to be on or off during thedefined period of time include instructions that, when executed by theone or more processing elements, cause the processing elements toschedule the beam identified as corresponding to the particular coveragearea to be off during the defined period of time as a consequence ofhaving identified the particular coverage area as an area for whichcoverage is not desired.
 40. The non-transitory computer-readablestorage medium of claim 37, wherein: the instructions that, whenexecuted by the one or more processing elements, cause the processingelements to identify characteristics of the identified coverage areasinclude instructions that, when executed by the one or more processingelements, cause the processing elements to identify expected aircraftdensity within the identified coverage areas; and the instructions that,when executed by the one or more processing elements, cause theprocessing elements to schedule individual beams that the antenna isconfigured to provide to be on or off during the defined period of timebased on the identified characteristics of their corresponding coverageareas include instructions that, when executed by the one or moreprocessing elements, cause the processing elements to scheduleindividual beams that the antenna is configured to provide to be on oroff during the defined period of time based on the expected aircraftdensity within the identified coverage areas.